/* 顺序容器(vector、deque、list)总结:
 * vector和deque的区别？
 * 答：1、底层数据结构
 *    2、前中后插入删除元素的时间复杂度
 *    3、内存的使用效率：vector效率较低，因为需要的内存空间是连续的
 *                  deque可以分块进行数据存储，不需要内存空间必须连续
 *    4、在中间进行insert或erase,vector和deque的效率哪个更好一些？
 *      答：二者操作的时间复杂度都是O(n),但由于vector是内存空间连续的，而deque的第二维内存空间不是连续的
 *      所以在deque中进行元素的insert或erase，造成元素移动的时间要比vector慢
 *
 * vector和list的区别？
 * 答：1、底层数据结构：数组  双向循环链表
 *      数组：增加删除 O(n)   随机访问 O(1)
 *      链表：增加删除 O(1)  查询 O(n)
 *
 * vector特点：
 * 动态数组，内存是连续的，2倍的方式进行扩容，vector<int> vec; 0-1-2-4-8....
 *
 * deque特点：
 * 动态开辟的二维数组空间，第二维是固定长度的数组空间，扩容的时候(第一维的数组进行2倍扩容)
 * 问题：deque的底层内存是否是连续的？
 * 答：不是，只有每一个第二维是连续的
 *
 * */
